let shopp=new Vue({
    el:".warp",
    data:{
        dat:[],
        // 无数据显示
        tips:false,
        // 总价
        totalPrice:0,
        // 全选
        allCheck:true
    },
    methods:{
        // 初始化
        init(){
            if(localStorage.hc&&localStorage.hc!="[]"){
                this.dat=JSON.parse(localStorage.hc);
            }else{
                this.tips=true;
            };
            this.calculatePrice();							
        },
        // 点击加减数量
        count(item,num){
            if(num==1){
                item.num+=num;
            }
            if(num==-1){
                if(item.num>1){
                    item.num+=num;
                }
            }
            this.calculatePrice();
        },
        // 输入
        keyup(item){
            // target 事件属性可返回事件的目标节点（触发该事件的节点），如生成事件的元素、文档或窗口。
            let that=event.target;
            // console.log(that)
            // type 事件属性返回发生的事件的类型，即当前 Event 对象表示的事件的名称。
            var type=event.type;							
            if(type=="blur"&&(that.value==""||that.value=="0")){
                item.num=1;
            }
            this.calculatePrice();
        },
        inputlimit(item){
            item.num=item.num.replace(/[^0-9]/g, '');
        },
        // 点击勾选
        checkClick(item){
            item.check=!item.check;
            this.calculatePrice();							
        },
        // 计算价格
        calculatePrice(item){
            // 重置价格
            this.totalPrice=0;
            // 已选
            let selected=0;
            let datA=this.dat;
            datA.find(function(value,index,datA){
                if(value.check==true){
                    selected++
                    shopp.totalPrice+=(parseInt(value.pric)*parseInt(value.num));
                }
            })
            // 全选判断
            this.allCheck=selected==this.dat.length;
            localStorage.hc=JSON.stringify(this.dat);
        },
        // 删除
        removeItem(id){
            let datB=this.dat;
            datB.find(function(value,index,datB){
                if(value.id==id){
                    shopp.dat.splice(index,1);
                }
            });
            localStorage.hc=JSON.stringify(this.dat);
            // 删除判断
            this.tips=localStorage.hc=="[]";
        },
        // 全选
        selectAll(){
            this.allCheck=!this.allCheck;
            for(let item of this.dat){
                item.check=this.allCheck;
            }
            this.calculatePrice();
        }
    }
});
shopp.init();